﻿<%@ Page Language="C#" AutoEventWireup="true" CodeFile="frmAdministrarPoliza.aspx.cs" Inherits="sistema_Despacho_frmAdministrarPoliza" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>

    <link href="../../kendoui.web/content/shared/styles/examples-offline.css" rel="stylesheet"/>
    <link href="../../kendoui.web/styles/kendo.common.min.css" rel="stylesheet"/>
    <link href="../../kendoui.web/styles/kendo.default.min.css" rel="stylesheet"/>
    <style type="text/css">
        #grdCotizaciones th.k-header { text-align: center }
        .style1
        {
            width: 69px;
        }
    </style>

    <script src="../../kendoui.web/js/jquery.min.js" type="text/javascript"></script>
    <script src="../../kendoui.web/js/kendo.web.min.js" type="text/javascript"></script>
    <script src="../../kendoui.web/content/shared/js/console.js" type="text/javascript"></script>
</head>
<body>
    <div id="frmContainer" class="k-content">
    <table border="0" width="100%">
    <tr>
        <td colspan="8" align="center"><h2>Consulta de Póliza</h2></td>
    </tr>
    <tr>
        <td colspan="8" align="center">&nbsp;</td>
    </tr>
    <tr>
        <td class="style1">Cliente:</td>
        <td><input id="txtCliente" style="width: 250px" /></td>
        <td>&nbsp;</td>
        <td>Nro. Póliza:</td>
        <td><input id="txtPoliza" style="width: 150px" class="k-textbox" /></td>
        <td>&nbsp;</td>
        <td>Ejecutivo:</td>
        <td><input id="txtEjecutivo" style="width: 250px" /></td>
    </tr>
    <tr>
        <td class="style1">Fecha de Póliza:</td>
        <td colspan="2"><input id="txtFechaInicio" value="10/01/2013" />&nbsp;-&nbsp;<input id="txtFechaFin" value="10/30/2013" /></td>
        <td>Estado:</td>
        <td colspan="4"><input id="cboEstado" style="width: 300px" /></td>
    </tr>
    <tr>
        <td class="style1">Tipo de Seguro:</td>
        <td colspan="2"><input id="cboTipoSeguro" style="width: 300px" /></td>
        <td>Ramo:</td>
        <td colspan="2"><input id="cboRamo" style="width: 300px" /></td>
        <td colspan="2" align="center"><button class="k-button" id="btnBuscar" style="width:160px;"><span class="k-icon k-i-search"></span>&nbsp;Buscar</button></td>
    </tr>
    <tr>
        <td colspan="8" align="center">&nbsp;</td>
    </tr>
    <tr>
        <td colspan="8" align="center"><form name="form1" action=""><div id="grdPoliza"></div></form></td>
    </tr>
    <tr>
        <td colspan="8" align="center">&nbsp;</td>
    </tr>
    <tr>
        <td colspan="8" align="center">
            <button class="k-button" id="btnNuevo" style="width:160px;"><span class="k-icon k-i-plus"></span>&nbsp;Nuevo</button>
            <button class="k-button" id="btnAnular" style="width:160px;"><span class="k-icon k-i-cancel"></span>&nbsp;Anular</button>
            <button class="k-button" id="btnVisualizar" style="width:160px;"><span class="k-icon k-i-search"></span>&nbsp;Visualizar</button>
            <button class="k-button" id="btnEditar" style="width:160px;"><span class="k-icon k-i-plus"></span>&nbsp;Editar</button>
            <button class="k-button" id="btnSalir" style="width:160px;"><span class="k-icon k-i-close"></span>&nbsp;Salir</button>
        </td>
    </tr>
    </table>

    <script type="text/javascript">
        $(document).ready(function () {
            var txtCliente = $("#txtCliente").kendoAutoComplete({
                dataTextField: "dCliente",
                filter: "startswith",
                minLength: 3,
                dataSource: {
                    transport: {
                        read: {
                            url: "http://localhost/Gra.Seguros.Servicio/CotizacionSeguro.svc/listarClientes",
                            data: {
                                Accept: "application/json"
                            }
                        },
                        change: function () {
                            var viewModel = Kendo.observable({
                                inst: this.view()[0]
                            });
                            kendo.bind($("#txtcliente"), viewModel.inst);
                        }
                    }
                }
            }).data("kendoAutoComplete");

            var txtEjecutivo = $("#txtEjecutivo").kendoAutoComplete({
                dataTextField: "dEjecutivo",
                filter: "startswith",
                minLength: 3,
                dataSource: {
                    transport: {
                        read: {
                            url: "http://localhost/Gra.Seguros.Servicio/CotizacionSeguro.svc/listarEjecutivos",
                            data: {
                                Accept: "application/json"
                            }
                        },
                        change: function () {
                            var viewModel = kendo.observable({
                                inst: this.view()[0]
                            });
                            kendo.bind($("#txtEjecutivo"), viewModel.inst);

                        }
                    }
                }
            }).data("kendoAutoComplete");

            function startChange() {
                var startDate = start.value(), endDate = end.value();
                if (startDate) {
                    startDate = new Date(startDate);
                    startDate.setDate(startDate.getDate());
                    end.min(startDate);
                } else if (endDate) {
                    start.max(new Date(endDate));
                } else {
                    endDate = new Date();
                    start.max(endDate);
                    end.min(endDate);
                }
            }

            function endChange() {
                var endDate = end.value(), startDate = start.value();

                if (endDate) {
                    endDate = new Date(endDate);
                    endDate.setDate(endDate.getDate());
                    start.max(endDate);
                } else if (startDate) {
                    end.min(new Date(startDate));
                } else {
                    endDate = new Date();
                    start.max(endDate);
                    end.min(endDate);
                }
            }

            var start = $("#txtFechaInicio").kendoDatePicker({
                change: startChange
            }).data("kendoDatePicker");

            var end = $("#txtFechaFin").kendoDatePicker({
                change: endChange
            }).data("kendoDatePicker");

            start.max(end.value());
            end.min(start.value());

            var cboEstado = $("#cboEstado").kendoComboBox({
                filter: "startswith",
                placeholder: "Seleccionar estado...",
                dataTextField: "dEstadoPoliza",
                dataValueField: "cEstadoPoliza",
                dataSource: {
                    transport: {
                        read: {
                            url: "http://localhost/Gra.Seguros.Servicio/PolizaSeguro.svc/listarEstadoPoliza",
                            data: {
                                Accept: "application/json"
                            }
                        },
                        change: function () {
                            var viewModel = Kendo.observable({
                                inst: this.view()[0]
                            });
                            kendo.bind($("#cboEstado"), viewModel.inst);
                        }
                    }
                }
            }).data("kendoComboBox");

            var cboTipoSeguro = $("#cboTipoSeguro").kendoComboBox({
                change: onChange_cboTipoSeguro,
                filter: "startswith",
                placeholder: "Seleccionar tipo de seguro...",
                dataTextField: "dTipoSeguro",
                dataValueField: "cTipoSeguro",
                dataSource: {
                    transport: {
                        read: {
                            url: "http://localhost/Gra.Seguros.Servicio/CotizacionSeguro.svc/listarTipoSeguros",
                            data: {
                                Accept: "application/json"
                            }
                        },
                        change: function () {
                            var viewModel = kendo.observable({
                                inst: this.view()[0]
                            });
                            kendo.bind($("#cboTipoSeguro"), viewModel.inst);
                        }
                    }
                }
            }).data("kendoComboBox");

            var existe_cboRamo = false;
            function onChange_cboTipoSeguro() {
                existe_cboRamo = true;
                $("#cboRamo").text("");
                $("#cboRamo").val("");
                var cboRamo = $("#cboRamo").kendoComboBox({
                    filter: "startswith",
                    placeholder: "Seleccionar ramo...",
                    dataTextField: "dRamo",
                    dataValueField: "cRamo",
                    dataSource: {
                        transport: {
                            read: {
                                url: "http://localhost/Gra.Seguros.Servicio/CotizacionSeguro.svc/listarRamos/" + cboTipoSeguro.value(),
                                data: {
                                    Accept: "application/json"
                                }
                            },
                            change: function () {
                                var viewModel = Kendo.observable({
                                    inst: this.view()[0]
                                });
                                kendo.bind($("#cboRamo"), viewModel.inst);
                            }
                        }
                    }
                }).data("kendoComboBox");
            }

            function fRight(str, n) {
                if (n <= 0)
                    return "";
                else if (n > String(str).length)
                    return str;
                else {
                    var iLen = String(str).length;
                    return String(str).substring(iLen, iLen - n);
                }
            }

            function fLeft(str, n) {
                if (n <= 0)
                    return "";
                else if (n > String(str).length)
                    return str;
                else
                    return String(str).substring(0, n);
            }

            $("#btnBuscar").click(function () {
                var _txtCliente = "0";
                var _txtPoliza = "0";
                var _txtEjecutivo = "0";
                var _txtFechaInicio = "-";
                var _txtFechaFin = "-";
                var _cboEstado = "0";
                var _cboTipoSeguro = "0";
                var _cboRamo = "0";

                if (txtCliente.value() != "") _txtCliente = txtCliente.value().split("-")[1];
                if ($("#txtPoliza").val() != "") _txtPoliza = $("#txtPoliza").val();
                if (txtEjecutivo.value() != "") _txtEjecutivo = txtEjecutivo.value().split("-")[1];
                if ($("#txtFechaInicio").val() != "") _txtFechaInicio = $("#txtFechaInicio").val().split("/")[2] + "" + fRight("00" + $("#txtFechaInicio").val().split("/")[0], 2) + "" + fRight("00" + $("#txtFechaInicio").val().split("/")[1], 2);
                if ($("#txtFechaFin").val() != "") _txtFechaFin = $("#txtFechaFin").val().split("/")[2] + "" + fRight("00" + $("#txtFechaFin").val().split("/")[0], 2) + "" + fRight("00" + $("#txtFechaFin").val().split("/")[1], 2);
                if (cboEstado.value() != "") _cboEstado = cboEstado.value();
                if (cboTipoSeguro.value() != "") _cboTipoSeguro = cboTipoSeguro.value();
                if (existe_cboRamo) {
                    if ($("#cboRamo").val() != "") _cboRamo = $("#cboRamo").val();
                }

                var grdPolizaData;

                grdPolizaData = new kendo.data.DataSource(
                {
                    transport: {
                        read: {
                            url: "http://localhost/Gra.Seguros.Servicio/PolizaSeguro.svc/listarPoliza/" + _txtPoliza + "/" + _txtFechaInicio + "/" + _txtFechaFin + "/" + _txtCliente + "/" + _cboTipoSeguro + "/" + _cboRamo + "/" + _txtEjecutivo + "/" + _cboEstado,
                            data: {
                                Accept: "application/json"
                            }
                        },
                        error: function (xhr) {
                            alert(xhr.responseText);
                        }
                    },
                    pageSize: 10
                });

                $("#grdPoliza").kendoGrid({
                    dataSource: grdPolizaData,
                    groupable: true,
                    sortable: true,
                    pageable: {
                        refresh: true,
                        pageSizes: true
                    },
                    selectable: "multiple",
                    dataBound: function () {
                        var grid = this;
                        grid.table.find("tr").find("td:first input")
                        .change(function (e) {
                            var checkbox = $(this);
                            var selected = grid.table.find("tr").find("td:first input:checked").closest("tr");
                            grid.clearSelection();
                            if (selected.length) {
                                grid.select(selected);
                            }
                        });
                    },
                    columns: [
                        { width: 15, headerTemplate: '<input id="checkAll" type="checkbox" onclick="ChequearTodos(this);" />', template: '<input id="${cPoliza}" name="${cRecepcionDocumento}" type="checkbox" />', filterable: false, sortable: false },
                        { width: 70, field: "cPolizaSBS", title: "Num. Póliza" },
                        { width: 70, field: "fEmision", title: "Fecha de Póliza" },
                        { width: 70, field: "cRecepcionDocumento", title: "Nro Ticket" },
                        { width: 110, field: "dNombreCliente", title: "Cliente" },
                        { width: 110, field: "dNombreEjecutivo", title: "Ejecutivo" },
                        { width: 90, field: "dRamo", title: "Ramo" },
                        { width: 90, field: "dEstadoPoliza", title: "Estado" }
                    ]
                });
            });

            $("#btnEditar").click(function () {

                //                Session("idPoliza") = "123456";
                //  '<%=Session["idPoliza"] = "123456" %>';

                var haySel = false;
                var strPoliza = '$Polizas@';
                for (var i = 0; i < document.forms["form1"].elements.length; i++) {
                    var elemento = document.forms[0].elements[i];
                    if (elemento.type == "checkbox" && elemento.id != "checkAll" && elemento.checked) {
                        haySel = true;
                        strPoliza = elemento.id;
                    }
                }

                if (haySel) {

                    var strPagina = "frmRegistroPoliza.aspx";
                    strPagina = strPagina + "?Poliza=" + strPoliza

                    document.location.replace(strPagina);
                }

            });

            $("#btnVisualizar").click(function () {
                var haySel = false;
                var strXML = '$Polizas@';
                for (var i = 0; i < document.forms["form1"].elements.length; i++) {
                    var elemento = document.forms[0].elements[i];
                    if (elemento.type == "checkbox" && elemento.name != "checkAll" && elemento.checked) {
                        haySel = true;
                        strXML = elemento.name;
                    }
                }


                var strRuta = "0"
                strRuta = "http://www.granaasociados.pe/laserfiche/index.aspx?db=GYAFiche#view=search;search={[]:[Ticket]=" + strXML
                strRuta = strRuta + "}"



                if (haySel) {
                    window.open(strRuta, "popupWindow", "width=1024,height=800,scrollbars=yes")
                }
                else {
                    alert("Seleccione alguna Póliza a visualizar.");
                }
            });



            $("#btnAnular").click(function () {
                var haySel = false;
                var strXML = '$Polizas@';
                for (var i = 0; i < document.forms["form1"].elements.length; i++) {
                    var elemento = document.forms[0].elements[i];
                    if (elemento.type == "checkbox" && elemento.id != "checkAll" && elemento.checked) {
                        haySel = true;
                        strXML = strXML + '$Poliza@$cPoliza@' + elemento.id + '$-cPoliza@$-Poliza@';
                    }
                }
                strXML = strXML + '$-Polizas@';

                if (haySel) {
                    $.ajax({
                        type: "GET",
                        url: "http://localhost/Gra.Seguros.Servicio/PolizaSeguro.svc/anularPoliza/" + strXML,
                        data: "{}",
                        contentType: "application/json; charset=utf-8",
                        dataType: "json",
                        success: function (data) {
                            alert("Anulación exitosa!!!.");
                            $("#btnBuscar").click();
                        },
                        error: function (xhr) {
                            alert(xhr.responseText);
                        }
                    });
                }
                else {
                    alert("Seleccione alguna Póliza a anular.");
                }
            });

        });

        $("#btnNuevo").click(function () {
            document.location.replace("frmRegistroPoliza.aspx");
        });

        $("#btnSalir").click(function () {
            document.location.href = "../../Default.aspx";

        });

        function ChequearTodos(chkbox) {
            for (var i = 0; i < document.forms["form1"].elements.length; i++) {
                var elemento = document.forms[0].elements[i];
                if (elemento.type == "checkbox") {
                    elemento.checked = chkbox.checked;
                }
            }

            if (chkbox.checked) {
                $('#grdPoliza').data('kendoGrid').tbody.find("tr").addClass('k-state-selected');
            }
            else {
                $("#grdPoliza").data("kendoGrid").clearSelection();
            }
        }
       

    </script>

    </div>
</body>
</html>

